Skip to main content

Embodied City Python SDK

Project description

embodied-city-python-sdk

A Simple Python SDK to interact with the Embodied City API. Users can easily achieve perception and control of drone agents through the following functions. When the command is issued via the API, changes in the agent's first-person view will be observed in the Console.

Installation

pip install embodiedcity

Usage

Acquire ID and token

Before you can use the SDK, you need to acquire a drone and obtain its token. You can get one by signing up at Embodied City.

In the website, you should go to the "Console" page, choose an available drone, and click on the "Acquire" button. After that, you will see a token with the drone ID.

ATTENTION: The token is a secret key that should not be shared with anyone.

ATTENTION: The token will expire after a certain period of time if you do not use it. (the time constrain will be notified in the website)

Initialize the client

from embodiedcity import DroneClient, ImageType, CameraID

base_url = "https://embodied-city.fiblab.net"
drone_id = "xxx"
token = "xxxxxxxx"
client = DroneClient(base_url, drone_id, token)

Move the drone

# Move the drone forward by 10 meter (Short movement distance may result in action failure)
client.move_back_forth(10)

Obtain the RGB image of the front camera

# Get a RGB image from the front-center camera
image = client.get_image(ImageType.Scene, CameraID.FrontCenter)

Get the depth image

# Get an image of the depth from the front-center camera
image = client.get_image(ImageType.DepthPlanar, CameraID.FrontCenter)

Release the drone

After you finish using the drone, you should release it to make it available for others.

You can do this by clicking on the "Release" button in the "Console" page.

FAQ

After invoking the control action, the drone did not move.

It is possible that the drone collided with a building. Try issuing a command to move the drone in a direction without obstacles. Alternatively, use the function DroneClient.move_to_position to force it to a specified location.

What should I do if I need the drone to perform more complex operations?

Please download and install the full embodiedcity simulator.

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

embodiedcity-0.2.0.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

embodiedcity-0.2.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file embodiedcity-0.2.0.tar.gz.

File metadata

  • Download URL: embodiedcity-0.2.0.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for embodiedcity-0.2.0.tar.gz
Algorithm Hash digest
SHA256 4626984096f3ffd2bf4124b628301939cf102a2cc447c6d4699aeef7015f8eaa
MD5 26cdd667715d30c1f3b4e31cbbd1bea3
BLAKE2b-256 992d41f8c86ee4cc9a0f342c2c8e7175354a1239c930532648fde79d7634c63f

See more details on using hashes here.

File details

Details for the file embodiedcity-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: embodiedcity-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for embodiedcity-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4c6b4a65cf48977b3324373a2225d405fa8896c042623f854647b9d9f8793ff2
MD5 5c392a31e3fc56ac1eb87c9e3e822bd8
BLAKE2b-256 13cfb9d291cdaa3cc619e8b60372ce64384998ae67bad27353e74577a82a49e6

See more details on using hashes here.

Supported by

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