Skip to main content

Robot integration runtime for the ARENA

Project description

ARENA-robot

Robot integration runtime for the ARENA.

Installation

Requires Python3.6+

pip install git+https://github.com/conix-center/ARENA-robot#egg=arena-robot

Or for development, clone the repo and from inside the directory:

pip install -e .

The vl53l5cx_py module requires Linux i2c interface (linux/i2c.h and linux/i2c-dev.h).

Modules

arenarobot

Services that stream to MQTT may be started with the arena-robot-service command. See examples/service_vl53l5cx_lidar_1.json for a service file example. All services require the following arguments:

  • service_type: Required. Currently only sensor_vl53l5cx is supported.
  • instance_name: Required. The name of this running service.
  • subtopic: Required. The device subtopic to publish to. For sensors this will always be prefixed with sensors/.
  • interval_ms For services that run repeatedly, this is the interval. Set to 0 by default, which will fire the service once.

sensor_vl53l5cx

This is a lidar sensor that connects through I2C and addresses by toggling its LPn pins. It additionally supports the following arguments:

  • dev_path: Required. Path to the I2C dev file device. For example, the first I2C port on the Raspberry Pi is /dev/i2c-1.
  • gpio_path: Required. Path to the GPIO dev file device. For example, the first I2C port on the Raspberry Pi is /dev/gpiochip0.
  • lpn_pins: Required. Array of pins (integers) on gpio_path connected to Lpn pins on the sensor. The array must be present, and at least one pin must be specified or the service won't initialized any sensors.

arenavideocall

After installing the repo, you should now have the arena-video-call-chrome command. You can also run it with python3 -m arena-video-call-chrome. It uses the standard arena-py scene environment variables.

The first argument sets the surface that the video should be mapped to. For example, to map to an object called avideobox:

MQTTH=arenaxr.org NAMESPACE=namespace SCENE=scene arena-video-call-chrome avideobox

vl53l5cx_py

C shared library

gcc -fPIC -shared -o vl53l5cx.so -Ivl53l5cx_py/include -Ivl53l5cx_py/VL53L5CX_Linux_driver_1.1.2/user/platform -Ivl53l5cx_py/VL53L5CX_Linux_driver_1.1.2/user/uld-driver/inc vl53l5cx_py/src/*.c vl53l5cx_py/VL53L5CX_Linux_driver_1.1.2/user/platform/*.c vl53l5cx_py/VL53L5CX_Linux_driver_1.1.2/user/uld-driver/src/*.c -l

License

Copyright (c) 2021, The CONIX Research Center All rights reserved.

This source code is licensed under the BSD-3-Clause license found in the LICENSE file in the root directory of this source tree.

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

arena-robot-0.1.1.tar.gz (1.2 MB view hashes)

Uploaded Source

Built Distributions

arena_robot-0.1.1-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (125.9 kB view hashes)

Uploaded PyPy manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

arena_robot-0.1.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (311.2 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

arena_robot-0.1.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (316.3 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

arena_robot-0.1.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (292.0 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

arena_robot-0.1.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (292.0 kB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

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