Robotics

Table of Contents

Robotics Stack

From design to deployment. Spatial provides the 3D design and simulation layer. Viam RDK provides the runtime to control and operate actual robots.


Embedded Linux Runtime

Robotics runs on Linux. Our decades of Linux and embedded systems experience means we build for the real world—factory floors, outdoor environments, and resource-constrained edge devices.

Viam RDK Runtime

Why we chose Viam RDK:

  • Open source — Aligns with our open standards philosophy
  • Go-native — Matches our technology stack
  • Modular — Components can be swapped and extended
  • Cloud-optional — Works offline-first, like our products
  • Hardware-agnostic — Not locked to specific robot manufacturers
  • Runs on embedded Linux — Raspberry Pi, NVIDIA Jetson, industrial controllers

Viam RDK is an open-source robotics development kit with language-agnostic SDKs (Go, Python, TypeScript) and a modular component architecture.

Viam RDK Documentation →

Embedded Platforms

PlatformUse Case
Raspberry PiPrototyping, edge compute, kiosks
NVIDIA JetsonGPU-accelerated vision and ML
Industrial LinuxFactory automation, harsh environments
Custom ARM boardsApplication-specific deployments

Same Go codebase. Same Viam RDK. Deploys from development workstation to embedded edge device.


Capabilities

CapabilityViam Service
Motion planning with collision avoidancemotion service
Object detection and segmentationvision service + ML models
Point cloud from depth sensorsCamera component
Hand-eye calibrationFrame system
SLAM with IMUslam service

Vision & Perception

Camera Abstraction

Viam provides a unified rdk:component:camera API that works across diverse camera types—webcams, IP cameras, LiDAR, and depth cameras like the Intel RealSense D435i.

How it works:

  • Standardized API — Your code talks to the Viam camera interface, not the hardware
  • Built-in drivers — The viam-camera-realsense module handles RealSense integration
  • Hardware agnostic — Swap cameras without changing application logic
  • Configuration-driven — Resolution, sensors, and streams configured via JSON, not code

Available methods: GetImage(), GetImages(), GetPointCloud(), plus intrinsic camera parameters.

Intel RealSense D435i

RGB-D depth sensing for point cloud generation and spatial perception.

librealsense on GitHub →

ML Pipeline

  • YOLOv8 object detection and segmentation
  • Integration with Viam vision service
  • Real-time inference on edge devices

Hardware Abstraction

The key value proposition: config change, not code change.

  • Same software, bigger arm — Swap xArm config for UR5e or KUKA, redeploy
  • xArm as teaching pendant — Demonstrate motions on xArm, larger arm mimics
  • Multi-robot coordination — xArm handles small parts, KUKA handles heavy lifting
  • Digital twin development — Develop against xArm, simulate against KUKA kinematics

Supported Arms

ModelPayloadReachUse Case
xArm 65kg700mmDevelopment
UR5e5kg850mmProduction
KUKA KR66kg900mmSmall parts
KUKA KR1010kg900-1100mmMedium assembly
KUKA KR1616kg1600mmWelding, palletizing
KUKA KR3030kg2000mm+Heavy handling

viam-kuka module →


Architecture

SOFTWARE STACK
┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐
│ Vision   │  │ Motion   │  │   ML     │  │ Business │
│ Pipeline │  │ Planning │  │ Models   │  │  Logic   │
└────┬─────┘  └────┬─────┘  └────┬─────┘  └────┬─────┘
     └─────────────┴─────────────┴─────────────┘
                         │
                  Viam Arm API
              (rdk:component:arm)
                         │
         ┌───────────────┼───────────────┐
         ▼               ▼               ▼
    ┌──────────┐   ┌──────────┐   ┌──────────┐
    │  xArm 6  │   │  UR5e    │   │  KUKA    │
    │  (dev)   │   │  (prod)  │   │  (heavy) │
    │ 5kg/700mm│   │ 5kg/850mm│   │ 30kg+    │
    └──────────┘   └──────────┘   └──────────┘

Industrial Integration

I/O Integration:

Modbus → PLC for industrial automation integration. Control conveyors, sensors, actuators, and safety systems from the same runtime.


How It Fits Together

LayerTechnologyPurpose
DesignSpatial3D work cell design and simulation
RuntimeViam RDKRobot control and operation
VisionRealSense + YOLOv8Perception and object detection
ArmsxArm / UR / KUKAPhysical manipulation
I/OModbus / PLCIndustrial integration

Learn More