-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 6f51355
Showing
171 changed files
with
26,011 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Sphinx build info version 1 | ||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. | ||
config: 6f9f5206bf1b46e213c1fb0c53e3b33d | ||
tags: 645f666f9bcd5a90fca523b33c5a78b7 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
API Reference | ||
============= | ||
|
||
This page contains auto-generated API reference documentation [#f1]_. | ||
|
||
.. toctree:: | ||
:titlesonly: | ||
|
||
/autoapi/science_jubilee/index | ||
|
||
.. [#f1] Created with `sphinx-autoapi <https://github.com/readthedocs/sphinx-autoapi>`_ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,334 @@ | ||
:py:mod:`science_jubilee.Machine` | ||
================================= | ||
|
||
.. py:module:: science_jubilee.Machine | ||
.. autoapi-nested-parse:: | ||
|
||
Driver for Controlling Jubilee | ||
|
||
|
||
|
||
Module Contents | ||
--------------- | ||
|
||
Classes | ||
~~~~~~~ | ||
|
||
.. autoapisummary:: | ||
|
||
science_jubilee.Machine.Machine | ||
|
||
|
||
|
||
Functions | ||
~~~~~~~~~ | ||
|
||
.. autoapisummary:: | ||
|
||
science_jubilee.Machine.get_root_dir | ||
science_jubilee.Machine.machine_homed | ||
science_jubilee.Machine.requires_deck | ||
science_jubilee.Machine.requires_safe_z | ||
|
||
|
||
|
||
.. py:function:: get_root_dir() | ||
Return the path to the duckbot directory. | ||
|
||
|
||
.. py:exception:: MachineConfigurationError | ||
Bases: :py:obj:`Exception` | ||
|
||
Raise this error if there is something wrong with how the machine is configured | ||
|
||
|
||
.. py:exception:: MachineStateError | ||
Bases: :py:obj:`Exception` | ||
|
||
Raise this error if the machine is in the wrong state to perform the requested action. | ||
|
||
|
||
.. py:function:: machine_homed(func) | ||
Check if the machine is homed before performing certain actions. | ||
|
||
|
||
.. py:function:: requires_deck(func) | ||
Check if a deck has been configured before performing certain actions. | ||
|
||
|
||
.. py:function:: requires_safe_z(func) | ||
Ensure deck is at a safe height before performing certain actions. | ||
|
||
|
||
.. py:class:: Machine(port: str = None, baudrate: int = 115200, address: str = None, deck_config: str = None, simulated: bool = False) | ||
Driver for sending motion cmds and polling the machine state. | ||
|
||
.. py:property:: configured_axes | ||
Return the configured axes of the machine. | ||
|
||
.. py:property:: configured_tools | ||
Return the configured tools. | ||
|
||
.. py:property:: active_tool_index | ||
Return the index of the current tool. | ||
|
||
.. py:property:: tool_z_offsets | ||
Return (in tool order) a list of tool's z offsets | ||
|
||
.. py:property:: axis_limits | ||
Return (in XYZU order) a list of tuples specifying (min, max) axis limit | ||
|
||
.. py:property:: position | ||
Returns the machine control point in mm. | ||
|
||
.. py:attribute:: LOCALHOST | ||
:value: '192.168.1.2' | ||
|
||
|
||
|
||
.. py:method:: connect() | ||
Connect to Jubilee over http. | ||
|
||
|
||
.. py:method:: load_deck(deck_filename: str, path: str = os.path.join(os.path.dirname(__file__), 'decks', 'deck_definition')) | ||
.. py:method:: gcode(cmd: str = '', response_wait: float = 30) | ||
.. py:method:: _set_absolute_positioning() | ||
Set absolute positioning for all axes except extrusion | ||
|
||
|
||
.. py:method:: _set_relative_positioning() | ||
Set relative positioning for all axes except extrusion | ||
|
||
|
||
.. py:method:: _set_absolute_extrusion() | ||
Set absolute positioning for extrusion | ||
|
||
|
||
.. py:method:: _set_relative_extrusion() | ||
Set relative positioning for extrusion | ||
|
||
|
||
.. py:method:: push_machine_state() | ||
Push machine state onto a stack | ||
|
||
|
||
.. py:method:: pop_machine_state() | ||
Recover previous machine state | ||
|
||
|
||
.. py:method:: download_file(filepath: str = None, timeout: float = None) | ||
Download the file into a file object. Full filepath must be specified. | ||
Example: /sys/tfree0.g | ||
|
||
|
||
.. py:method:: reset() | ||
Issue a software reset. | ||
|
||
|
||
.. py:method:: home_all() | ||
.. py:method:: home_xyu() | ||
Home the XY axes. | ||
Home Y before X to prevent possibility of crashing into the tool rack. | ||
|
||
|
||
.. py:method:: home_x() | ||
Home the X axis | ||
|
||
|
||
.. py:method:: home_y() | ||
Home the Y axis | ||
|
||
|
||
.. py:method:: home_u() | ||
Home the U (tool) axis | ||
|
||
|
||
.. py:method:: home_v() | ||
Home the V axis | ||
|
||
|
||
.. py:method:: home_z() | ||
Home the Z axis. | ||
Note that the Deck must be clear first. | ||
|
||
|
||
.. py:method:: home_e() | ||
Home the extruder axis (syringe) | ||
|
||
|
||
.. py:method:: home_in_place(*args: str) | ||
Set the current location of a machine axis or axes to 0. | ||
|
||
|
||
.. py:method:: _move_xyzev(x: float = None, y: float = None, z: float = None, e: float = None, v: float = None, s: float = 6000, param: str = None, wait: bool = False) | ||
Move X/Y/Z/E/V axes. Set absolute/relative mode externally. | ||
|
||
:param x: | ||
:type x: x position on the bed, in whatever units have been set (default mm) | ||
:param y: | ||
:type y: y position on the bed, in whatever units have been set (default mm) | ||
:param z: | ||
:type z: z position on the bed, in whatever units have been set (default mm) | ||
:param e: | ||
:type e: extruder position, in whatever units have been set (default mm) | ||
:param v: | ||
:type v: v axis position, in whatever units have been set (default mm) | ||
:param s: | ||
:type s: speed at which to move (default 6000 mm/min) | ||
|
||
:rtype: Nothing | ||
|
||
|
||
.. py:method:: move_to(x: float = None, y: float = None, z: float = None, e: float = None, v: float = None, s: float = 6000, param: str = None, wait: bool = False) | ||
Move to an absolute X/Y/Z/E/V position. | ||
|
||
:param x: | ||
:type x: x position on the bed, in whatever units have been set (default mm) | ||
:param y: | ||
:type y: y position on the bed, in whatever units have been set (default mm) | ||
:param z: | ||
:type z: z position on the bed, in whatever units have been set (default mm) | ||
:param e: | ||
:type e: extruder position, in whatever units have been set (default mm) | ||
:param v: | ||
:type v: v axis position, in whatever units have been set (default mm) | ||
:param s: | ||
:type s: speed at which to move (default 6000 mm/min) | ||
:param force_extrusion: | ||
:type force_extrusion: whether to force extrusion to also be absolute positioning (default True) | ||
|
||
:rtype: Nothing | ||
|
||
|
||
.. py:method:: move(dx: float = 0, dy: float = 0, dz: float = 0, de: float = 0, dv: float = 0, s: float = 6000, param: str = None, wait: bool = False) | ||
Move relative to the current position | ||
|
||
:param dx: | ||
:type dx: change in x position, in whatever units have been set (default mm) | ||
:param dy: | ||
:type dy: change in y position, in whatever units have been set (default mm) | ||
:param dz: | ||
:type dz: change in z position, in whatever units have been set (default mm) | ||
:param de: | ||
:type de: change in e position, in whatever units have been set (default mm) | ||
:param dv: | ||
:type dv: change in v position, in whatever units have been set (default mm) | ||
:param s: | ||
:type s: speed at which to move (default 6000 mm/min) | ||
:param force_extrusion: | ||
:type force_extrusion: whether to force extrusion to also be relative positioning (default True) | ||
|
||
:rtype: Nothing | ||
|
||
|
||
.. py:method:: dwell(t: float, millis: bool = True) | ||
Pause the machine for a period of time. | ||
|
||
:param t: | ||
:type t: time to pause, in milliseconds by default | ||
:param millis (optional): | ||
:type millis (optional): boolean, set to false to use seconds. default unit is milliseconds. | ||
|
||
:rtype: Nothing | ||
|
||
|
||
.. py:method:: safe_z_movement() | ||
.. py:method:: _get_tool_index(tool_item: Union[int, science_jubilee.tools.Tool.Tool, str]) | ||
.. py:method:: load_tool(tool: science_jubilee.tools.Tool.Tool = None) | ||
Add a new tool for use on the machine. | ||
|
||
|
||
.. py:method:: reload_tool(tool: science_jubilee.tools.Tool.Tool = None) | ||
Update a tool which has already been loaded. | ||
|
||
|
||
.. py:method:: pickup_tool(tool_id: Union[int, str, science_jubilee.tools.Tool.Tool] = None) | ||
Pick up the tool specified by tool id. | ||
|
||
|
||
.. py:method:: park_tool() | ||
Park the current tool. | ||
|
||
|
||
.. py:method:: get_position() | ||
Get the current position, returns a dictionary with X/Y/Z/U/E/V keys | ||
|
||
|
||
.. py:method:: load_labware(labware_filename: str, slot: int, path: str = None, order: str = 'rows') | ||
.. py:method:: tool_lock() | ||
Runs Jubilee tool lock macro. Assumes tool_lock.g macro exists. | ||
|
||
|
||
.. py:method:: tool_unlock() | ||
Runs Jubilee tool unlock macro. Assumes tool_unlock.g macro exists. | ||
|
||
|
||
.. py:method:: disconnect() | ||
Close the connection. | ||
|
||
|
||
.. py:method:: __enter__() | ||
.. py:method:: __exit__(*args) | ||
Oops, something went wrong.