Skip to main content

Official Python SDK for the Wandelbots

Project description

wandelbots-nova

This library provides an SDK for the Wandelbots NOVA API.

The SDK will help you to build your own apps and services on top of NOVA and makes programming a robot as easy as possible.

Requirements

This library requires

  • Python >=3.10

Installation

To use the library, first install it using the following command

pip install wandelbots-nova

Then import the library in your code

from nova import Nova, MotionGroup

Usage

Here is an example of how to use the library to connect to a robot controller and move the robot.

from nova import Nova, pi, jnt, ptp
import asyncio


async def main():
    nova = Nova()
    cell = nova.cell()
    controller = await cell.controller("ur")

    # Define a home position
    home_joints = (0, -pi / 4, -pi / 4, -pi / 4, pi / 4, 0)

    # Connect to the controller and activate motion groups
    async with controller:
        motion_group = controller.get_motion_group()

        # Get current TCP pose and offset it slightly along the x-axis
        current_pose = await motion_group.tcp_pose("Flange")
        target_pose = current_pose @ Pose((100, 50, 0, 0, 0, 0))

        actions = [
            jnt(home_joints),
            ptp(target_pose),
            ptp(target_pose @ (200, 0, 0, 0, 0, 0)),
            jnt(home_joints),
        ]

        await motion_group.run(actions, tcp="Flange")


if __name__ == "__main__":
    asyncio.run(main())

Have a look at the examples directory to see how to use the library.

Development

To install the development dependencies, run the following command

poetry install

Environment Variables for NOVA Configuration

  1. Copy the Template: Make a copy of the provided .env.template file and rename it to .env with cp .env.template .env.
  2. Fill in the Values: Open the .env file in a text editor and provide the necessary values for each variable. The table below describes each variable and its usage.
Variable Description Required Default Example
NOVA_HOST The base URL or hostname of the NOVA server instance. Yes None https://nova.example.com
NOVA_USERNAME The username credential used for authentication with the NOVA service. Yes* None my_username
NOVA_PASSWORD The password credential used in conjunction with NOVA_USERNAME. Yes* None my_password
NOVA_ACCESS_TOKEN A pre-obtained access token for NOVA if using token-based authentication. Yes* None eyJhbGciOi...

Note on Authentication:
You can authenticate with NOVA using either username/password credentials or a pre-obtained access token, depending on your setup and security model:

  • If using username/password: Ensure both NOVA_USERNAME and NOVA_PASSWORD are set, and leave NOVA_ACCESS_TOKEN unset.
  • If using an access token: Ensure NOVA_ACCESS_TOKEN is set, and leave NOVA_USERNAME and NOVA_PASSWORD unset.

Only one method should be used at a time. If both methods are set, the token-based authentication (NOVA_ACCESS_TOKEN) will typically take precedence.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wandelbots_nova-0.1.8.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wandelbots_nova-0.1.8-py3-none-any.whl (22.5 kB view details)

Uploaded Python 3

File details

Details for the file wandelbots_nova-0.1.8.tar.gz.

File metadata

  • Download URL: wandelbots_nova-0.1.8.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for wandelbots_nova-0.1.8.tar.gz
Algorithm Hash digest
SHA256 5786ecb998e6e807c3b0c2717470ee35a50ef7a499f1c7795f26ee6beff486bc
MD5 79ddbcc58fc89b8ec8b6544ee1f3d548
BLAKE2b-256 f9e40446fe7920c32ba2bb48f680cfdd2d33147ed71e0c913863a773d5173733

See more details on using hashes here.

File details

Details for the file wandelbots_nova-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for wandelbots_nova-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 43c86c71a8af42d488771ad95d88cf0f50334d5551587b80da989b4da9aefdc6
MD5 7f14e161bdcdb9b15476c9d45de0643b
BLAKE2b-256 780e08efccf2d0f599e7eb2ad2e1140e6772e2a7641de7cc6fb64ab5f3fdb720

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page