API Reference v9.2.0
OfflineTranslatorclass
Module: zaber_motion.gcode
Represents an offline G-Code translator. It allows to translate G-Code blocks to Zaber ASCII protocol stream commands. This translator does not need a connected device to perform translation.
Requires at least Firmware 7.11.
The following examples illustrate how you can obtain an instance of this type:
Example 1
Example 2
from zaber_motion.ascii import Connection
from zaber_motion.gcode import OfflineTranslator
connection = Connection.open_serial_port('COM3')
device = connection.get_device(1)
offline_translator = OfflineTranslator.setup_from_device(device, [1, 2])from zaber_motion.gcode import OfflineTranslator
offline_translator = OfflineTranslator.setup(...)Related Guides:
Index
pProperties
Properties
p
Methods
m
m
offline_translator.get_axis_coordinate_system_offset(coordinate_system, axis, unit)Gets offset of an axis in a given coordinate system.
Arguments
| Name | Type | Description |
|---|---|---|
| coordinate_system | str | Coordinate system (e.g. G54). |
| axis | str | Letter of the axis. |
| unit | LengthUnits | Units of position. |
Return Value
float Offset in translator units of the axis.m
offline_translator.get_axis_position(axis, unit)Gets position of translator's axis. This method does not query device but returns value from translator's state.
Arguments
| Name | Type | Description |
|---|---|---|
| axis | str | Letter of the axis. |
| unit | LengthUnits | Units of position. |
Return Value
float Position of translator's axis.m
m
offline_translator.set_axis_home_position(axis, position, unit)Sets the home position of translator's axis. This position is used by G28.
Arguments
| Name | Type | Description |
|---|---|---|
| axis | str | Letter of the axis. |
| position | float | The home position. |
| unit | LengthUnits | Units of position. |
m
offline_translator.set_axis_position(axis, position, unit)Sets position of translator's axis. Use this method to set position after performing movement outside of the translator. This method does not cause any movement.
Arguments
| Name | Type | Description |
|---|---|---|
| axis | str | Letter of the axis. |
| position | float | The position. |
| unit | LengthUnits | Units of position. |
m
offline_translator.set_axis_secondary_home_position(axis, position, unit)Sets the secondary home position of translator's axis. This position is used by G30.
Arguments
| Name | Type | Description |
|---|---|---|
| axis | str | Letter of the axis. |
| position | float | The home position. |
| unit | LengthUnits | Units of position. |
m
m
offline_translator.set_traverse_rate(traverse_rate, unit)Sets the speed at which the device moves when traversing (G0).
Arguments
| Name | Type | Description |
|---|---|---|
| traverse_rate | float | The traverse rate. |
| unit | VelocityUnits | Units of the traverse rate. |
s
OfflineTranslator.setup(definition, config = None)Sets up translator from provided device definition and configuration.
Arguments
| Name | Type | Description |
|---|---|---|
| definition | DeviceDefinition | Definition of device and its peripherals. The definition must match a device that later performs the commands. |
| config | Optional[TranslatorConfig] | Configuration of the translator. |
Return Value
OfflineTranslator New instance of translator.s
OfflineTranslator.setup_from_device(device, axes, config = None)Sets up an offline translator from provided device, axes, and configuration.
Arguments
| Name | Type | Description |
|---|---|---|
| device | Device | Device that later performs the command streaming. |
| axes | List[int] | Axis numbers that are later used to setup the stream. For a lockstep group specify only the first axis of the group. |
| config | Optional[TranslatorConfig] | Configuration of the translator. |
Return Value
OfflineTranslator New instance of translator.m
offline_translator.translate(block)Translates a single block (line) of G-code.
Arguments
| Name | Type | Description |
|---|---|---|
| block | str | Block (line) of G-code. |
Return Value
TranslateResult Result of translation containing the stream commands.