Skip to main content

Integration and Supervisory control of Autonomous Robots - Open source robot implementation

Project description

isar-robot

ISAR - Integration and Supervisory control of Autonomous Robots - is a tool for integrating robot applications into Equinor systems. Through the ISAR API you can send command to a robot to do missions and collect results from the missions.

Running the full ISAR system requires an installation of a robot which satisfies the required interface. isar-robot is a default implementation of such a robot.

Installation

For installation of isar-robot to use with ISAR, please follow the robot integration installation guide.

Run isar-robot

After installing isar-robot, it can be used through ISAR.

Development

Create a fork of the repository and clone the fork to your machine:

git clone https://github.com/<your-username>/isar-robot
cd isar-robot

Choose if you want to run via uv or manually creating venv

Option A: Local development with uv

An easy way to run isar-robot locally is with uv. The pyproject.toml includes a [tool.uv.sources] override that points the isar dependency to the local ../isar folder.

Note that this assumes the following folder structure between isar and isar-robot:

parent-folder/
├── isar/
└── isar-robot/
uv run isar-start

Option B: Manually creating venv

Create a virtual environment, see a guide for this here: https://docs.python.org/3/library/venv.html.

Then install the requirements and the package:

pip install -r requirements.txt -e .[dev]

Configurable variables

Specific mission and task behaviours can be configured as enviorment variables. These are optional and do not have to be set. These allow for always failing specific mission types, failing specific task types, setting custom task durations, and setting custom mission durations. The following list shows all configurable environment variables. In this case "normal" means non-localization or return to home tasks.

The variable names and types are as follows:

TASK_DURATION_IN_SECONDS: float
MISSION_DURATION_IN_SECONDS: float
SHOULD_FAIL_NORMAL_TASK: bool
SHOULD_FAIL_RETURN_TO_HOME_TASK: bool

Every configuration variable is defined in settings.py, and they may all be overwritten by specifying the variables in your ".env" file in ISAR. Note that the configuration variable must be prefixed with ROBOT_ when specified in the ISAR environment file.

Dependencies

The dependencies used for this package are listed in pyproject.toml and pinned in requirements.txt. This ensures our builds are predictable and deterministic. This project uses pip-compile (from pip-tools) for this:

pip-compile --output-file=requirements.txt pyproject.toml

To update the requirements to the latest versions, run the same command with the --upgrade flag:

pip-compile --output-file=requirements.txt pyproject.toml --upgrade

Contributing

We welcome all kinds of contributions, including code, bug reports, issues, feature requests, and documentation. The preferred way of submitting a contribution is to either make an issue on github or by forking the project on github and making a pull request.

Project details


Download files

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

Source Distribution

isar_robot-1.5.24.tar.gz (14.9 MB view details)

Uploaded Source

Built Distribution

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

isar_robot-1.5.24-py3-none-any.whl (14.9 MB view details)

Uploaded Python 3

File details

Details for the file isar_robot-1.5.24.tar.gz.

File metadata

  • Download URL: isar_robot-1.5.24.tar.gz
  • Upload date:
  • Size: 14.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for isar_robot-1.5.24.tar.gz
Algorithm Hash digest
SHA256 9f606b61149c0bbae468026d4b7d067fb54ed1931e341e95568a61f0e745b64d
MD5 bb5a68461f0c0bf692242a4f45dff06e
BLAKE2b-256 9c2213f8097a3492749e53ce120f7a7a7431b92fcb1f3b4616fd1f6161b3bc11

See more details on using hashes here.

File details

Details for the file isar_robot-1.5.24-py3-none-any.whl.

File metadata

  • Download URL: isar_robot-1.5.24-py3-none-any.whl
  • Upload date:
  • Size: 14.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for isar_robot-1.5.24-py3-none-any.whl
Algorithm Hash digest
SHA256 c3648105294457ece9f5584e85a7cf12b7fbfba5dcb291e55656d29ad1b3809e
MD5 b07053b266b681d960a3ff0ad8bc8d17
BLAKE2b-256 9180857cbbce966c81b9a19d21a5f8317a66799af3e88f53d8f5e8ec203eb323

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