This library provides a wrapper around the Wandelbots API. Under the hood it queries the API endpoints directly, not using wandelbots_api_client
(which is still required as dependencies since the auto-generated types are used from the package for type-checking convenience).
The wrapper is meant to ease the interaction with the Wandelbots API by providing a simpler interface for initializing a MotionGroup
and interacting with it.
For the full feature set of our API please refer to the official documentation and use the wandelbots_api_client
package directly.
You can try the features of this library in a Jupyter notebook by clicking the Binder badge above. Create a new Instance by registering on the Wandelbots website and use the credentials to interact with the API.
Current Features:
- Sync and Async Planning and Execution
- Pose Transformations
This library requires
- Python >=3.9
To use the library, first install it using the following command
pip install wandelbots
Then import the library in your code
from wandelbots import Instance, MotionGroup, Planner
To install the development dependencies, run the following command
poetry install
To remove an old virtual environment and create a new one, first get the name of the old environment by running
poetry env info
Then remove the old environment and create a new one with the following commands
poetry env remove <name-of-env>
poetry install
Run the poetry shell to activate the virtual environment
poetry shell
To build the package locally, run the following command
poetry build
This will create a dist/
directory with the built package (.tar.gz
and .whl
files).
pip install wandelbots
wandelbots = { git = "https://github.com/wandelbotsgmbh/wandelbots-python.git", branch = "feature/set-ios-on-path" }
The wrapper provides a simple interface for initializing a Instance
, MotionGroup
and a Planner
object, which can be used to interact with the Wandelbots API:
from wandelbots import Instance, MotionGroup, Planner
my_instance = Instance(
url=https://<my-instance-url>,
user=<username>,
password=<password>
)
my_robot = MotionGroup(
instance=my_instance,
cell="cell",
motion_group="0@motion_group",
default_tcp="Flange"
)
For further examples take a look at the examples.
poetry run pytest -rs -v
By default integration tests will be skipped.
To run them localy create an env file at envs/.env.tests
with your values.
WANDELAPI_BASE_URL=
NOVA_ACCESS_TOKEN=
CELL_ID=
MOTION_GROUP=
TCP=