Skip to main content

Ozobot ARI library

Project description

ozobot-ari

Interface for controlling Ozobot Ari. See the monorepo for more details.

Work in progress, only a web runtime driver for Ozobot Editor available

Usage

import asyncio
import random
from ozobot.ari import AriHandle, Ari
from ozobot.linefollower import NamedColor, LEDMask, Direction


async def monitor(it):
  async for data in it:
    print(f"Sample taken: {data.value}")


async def main():
  async with AriHandle(id="ABCDE*") as ari:
    await ari.move(100, 50)
    await ari.rotate(180, 90)

    velo_task = asyncio.create_task(ari.set_velocity(50, 0))
    await asyncio.sleep(2)
    velo_task.cancel()

    await ari.set_led(LEDMask.FRONT_CENTER | LEDMask.FRONT_LEFT | LEDMask.FRONT_RIGHT, NamedColor.BLUE)
    await ari.set_led(LEDMask.FRONT_LEFT_CENTER | LEDMask.FRONT_RIGHT_CENTER, NamedColor.RED)

    await ari.play_sound("happy")
    await ari.play_tone("A", 4, 1, 1)

    await ari.follow_line(Direction.STRAIGHT)
    intersection = await ari.data.intersection.read()
    print(f"At intersection: {intersection.value}")

    async with ari.data.intersection.watch() as intersections, ari.data.color_code.watch() as codes:
      t1 = asyncio.create_task(_monitor(intersections))
      t2 = asyncio.create_task(_monitor(codes))

      await ari.follow_line(random.choice(list(intersection.value)))

      t1.cancel()
      t2.cancel()


asyncio.run(main())

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

ozobot_ari-0.2.0.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

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

ozobot_ari-0.2.0-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ozobot_ari-0.2.0.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ozobot_ari-0.2.0.tar.gz
Algorithm Hash digest
SHA256 58560f9391b091daa77a4b2407c2643d06dc5edddec5100271c7a558ef9941dc
MD5 904d52b66ac847cf051aae64d66bb1c3
BLAKE2b-256 47a2fa139ebdd9e3acd62bcd905e341cf128510b45c6989ebd7b65d528a810b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ozobot_ari-0.2.0.tar.gz:

Publisher: publish.yml on ozobot/python-libraries

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: ozobot_ari-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ozobot_ari-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c7cb5fb72d7563aada02f258e69a20e8dc6e998dbfbe273fca72c53e9c67dedd
MD5 61dd8b73df10744db9063d2806679e68
BLAKE2b-256 db6944fb08851dea237c7f8a6188506f9c173e80d6c41c76807b068776eae5be

See more details on using hashes here.

Provenance

The following attestation bundles were made for ozobot_ari-0.2.0-py3-none-any.whl:

Publisher: publish.yml on ozobot/python-libraries

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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