Skip to main content

A unified Python client for Roboreactor edge devices and robot simulators.

Project description

roboreactor

Official Python client library for connecting edge devices, emulators, and robot controls directly to the RoboReactor ecosystem.

Installation

pip install roboreactor

Digital Twin Motion Control

To stream joint motion feedback and synchronize with the motion twin simulation, use the following example:

from roboreactor import RoboReactor
import time

# Initialize the synchronized connection client
client = RoboReactor(
    email="kornbot380@hotmail.com",
    project_name="Smart_Robots",
    base_url="https://roboreactor.com"  # Defaults to https://roboreactor.com if omitted
)

print("[INFO] Initiating joint loop feedback sequence...")

# Emulating a real-world physical sweeping path (0° to 269°)
for angle in range(0, 270):
    joint_telemetry = {
        'wrist': {'Analog-read': float(angle)},
        'shoulder': {'Analog-read': float(angle)},
        'base': {'Analog-read': float(angle)}
    }
    
    # Broadcast state variables directly to the cloud dashboard
    response = client.update_feedback_sensors(joint_telemetry)
    print(f"[TX] Angle: {angle}° | Status Response: {response}")
    time.sleep(0.01)

Absolute Target Kinematics & Orientation Control in Navigation simulation digital twin sync on the web

To sync high-level coordinates, orientations, and specific target angles to the navigation simulator rendering engine:

import math
from roboreactor import RoboReactor

# Initialize the client
client = RoboReactor(
    email="kornbot380@hotmail.com",
    project_name="Smart_Robots",
    base_url="https://roboreactor.com"
)

# Define targeted joint spatial layout arrays (configured in Radians)
joint_targets = {
    "shoulder": math.radians(150),
    "base": math.radians(45),
    "wrist": math.radians(20)
}

# Fire absolute multi-axis coordinate trajectories into the rendering engine
response = client.send_navigation_control(
    x=1.5,
    y=0.0,
    z=1.5,
    roll_deg=0.0,
    pitch_deg=0.0,
    yaw_deg=0.0,
    joint_targets_rad=joint_targets,
    robot_name="Robot_arm_01"
)

print(f"[NAV-TX] Kinematics Status Update: {response}")

Heterogeneous Multi-Sensor Payload Ingestion

Leverage the standard unified telemetry pipeline (post_sensor_data) to ingest complex multidimensional arrays, spatial matrices, audio streams, or specialized hardware telemetry.

import random
import math
from roboreactor import RoboReactor

# Initialize the client
client = RoboReactor(
    email="kornbot380@hotmail.com",
    project_name="Smart_Robots",
    base_url="https://roboreactor.com"
)

# --- Category 1: Battery Management Systems (BMS Telemetry) ---
bms_payload = {
    "BMS_sensor": {
        "main_pack": 88.5, 
        "aux_cell_1": 86.5, 
        "temp_sensor_5": 35.5
    }
}
client.post_sensor_data(bms_payload)

# --- Category 2: Inertial Measurement Units (IMU Kinematics) ---
imu_payload = {
    "Motion_sensor": {
        "imu_1": {
            "x": random.uniform(-0.1, 0.1),
            "y": random.uniform(-0.1, 0.1),
            "z": 1.015
        },
        "radar_2": 3.45
    }
}
client.post_sensor_data(imu_payload)

# --- Category 3: Spatial Matrices (2D Tactile Arrays / Temperature Heatmaps) ---
# Constructs a standard 10x10 floating matrix grid 
tactile_matrix = [[round(random.uniform(8.5, 9.0), 4) for _ in range(10)] for _ in range(10)]
matrix_payload = {
    "Array_sensor": {
        "Tactile_finger_sensor_1": tactile_matrix
    }
}
client.post_sensor_data(matrix_payload)

# --- Category 4: High-Frequency Audio Signals (Digital Signal Processing Vectors) ---
audio_waveform = [round(math.sin(i * 0.5) * 0.05, 4) for i in range(50)]
audio_payload = {
    "Audio_sensor": {
        "mic_1": audio_waveform
    }
}
client.post_sensor_data(audio_payload)

print("[SUCCESS] Multi-category sensory dataset dispatched.")

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

roboreactor-0.1.3.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

roboreactor-0.1.3-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file roboreactor-0.1.3.tar.gz.

File metadata

  • Download URL: roboreactor-0.1.3.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for roboreactor-0.1.3.tar.gz
Algorithm Hash digest
SHA256 187f1cf1282c978359541003a9b38b6bcc75a268420f2f8a2abdc6ce54f3f2ef
MD5 1773da9ffce61406b30bbbd94892e7a6
BLAKE2b-256 b95f7c61ae4178ae5ee1b02311fbbddc6516be7690a63418c51702722891ab2a

See more details on using hashes here.

File details

Details for the file roboreactor-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: roboreactor-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for roboreactor-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 08b5e995a6637b759cd9b5c8c82a376639aefaa784b7c8908d5667f901217b20
MD5 2f520da1830888a472bb6d940a330737
BLAKE2b-256 f3cd615ea7778d9afa4f2433f6d7211e8bdfedac2ecbad46a484c3a57bac6312

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