A robotic arm is made up of a series of links and joints, ending with a device you can position.
The moving platform that the other parts of a mobile robot attach to.
Build a simple smart machine in a few steps using Viam’s modular system of components and services without writing much or any code.
Configure a camera to use for testing."
Configure a fake encoder.
Configure a fake gantry.
Configure a fake generic component.
Configure a fake gripper.
Configure a fake sensor to use for testing.
Configure a fake servo.
Add a modular resource to your machine by configuring it.
Configure a renogy model power sensor to return battery voltage and load current, power, and various other readings.
The signal wire hub of a machine, with GPIO pins for transmitting signals between the machine’s computer and its other components.
Create a module to provide a new modular resource to your machine.
Configure an esp32 board.
Configure a fake base to use for testing without physical hardware.
Configure a fake board.
Configure a jetson board to integrate an NVIDIA Jetson Orin Module and Developer Kit, NVIDIA Jetson AGX, or NVIDIA Jetson Nano into your machine.
Configure a Raspberry Pi 4, 3, or Zero 2 W board.
Configure a Raspberry Pi 5 board.
Configure a ti board.
Use the Viam CLI to upload a custom module to the Viam registry as a public module or as a private module that is shared only within your organization.
The micro-RDK support for moving platforms that the other parts of a mobile robot attach to.
The micro-RDK support for the signal wire hub of a smart machine, with GPIO pins for transmitting signals between the machine’s computer and its other components.
Before you can program a machine, you must configure its components and services as well as any modules, remotes, processes and frames.
Support in the micro-RDK for encoders, a special type of sensor that measures rotation of a motor or joint.
Configure a fake input controller for testing.
Uses a camera device, a video file, or a stream as a camera.
Configure a linux-supported gamepad as an input controller.
Support in the micro-RDK for generic compoent types.
Configure a GPIO- or ADC-based device as an input controller.
Support in the micro-RDK for motors, rotating machines that transform electrical energy into mechanical energy.
Support in the micro-RDK for movement sensors, sensors that measure location, kinematic data, or both.
Configure a mux input controller to combine one or more input controllers.
Support in the micro-RDK for servos, small motors whose position you can precisely control.
Configure and wire a two-wheeled base with a microcontroller.
Configure a web-based gamepad as an input controller.
Configure and wire a wheeled base.
Configure a camera that gets color or depth images frames from a file path.
Configure a camera that uses velodyne lidar.
Configure a standard camera that streams camera data.
Configure a fake arm to use for testing.
Configure a UFACTORY Lite 6 arm for your machine.
Configure a streaming camera with an MJPEG track.
Configure a UFACTORY xArm 6 into your machine.
Configure a UFACTORY xArm 7 for your machine.
Configure a camera that streams image data from an HTTP endpoint.
Combine the streams of two camera servers to create colorful point clouds.
Use the intrinsics of the color and depth camera, as well as the extrinsic pose between them, to align two images.
Use a homography matrix to align the color and depth images.
Combine and align the streams of a color and a depth camera.
Configure a BeagleBone board.
A camera captures 2D or 3D images and sends them to the computer controlling the machine.
Combine the point clouds from multiple camera sources and project them to be from the point of view of target_frame.
Connect multiple machine parts to each other as sub-parts or remotes.
Configure a sensor-controlled base, a robotic base with feedback control from a movement sensor.
Configure a UR5e arm.
A special type of sensor that measures rotation of a motor or joint.
A mechanical system of linear rails that can precisely position an attached device.
Configure a Numato peripheral board.
A component that does not fit any of the other APIs.
A gripper is a robotic grasping device that can open and close.
An input controller, like a gamepad or joystick, is a device humans use to control a machine’s actions.
Instructions for transforming a camera.
Configure an ultrasonic model camera.
Configure an ultrasonic model sensor.
Configure a BME280 sensor.
Configure a ds18b20 model sensor.
Tutorials and repositories with modular resources configuration examples.
A motor is a rotating machine that transforms electrical energy into mechanical energy.
A sensor that measures location, kinematic data, or both.
Configure a PCA9685 board.
A device that provides information about a machine’s power systems, including voltage, current, and power consumption.
Configure a sensirion-sht3xd model sensor.
A device that sends information about the outside world to the computer controlling a machine.
Configure a single-axis gantry.
Configure an UP board.
Configure a custom Linux board.
Some usage may require you to define new APIs or deploy custom components using a server on a remote part
Calibrate a camera and extract the intrinsic and distortion parameters.
Configure a multi-axis gantry.
A hobby servo is a special type of small motor whose position you can precisely control.
Configure a gpio servo with a microcontroller.
Configure a gpio servo.
Configure a pi servo to integrate a hobby servo controlled by GPIO pins on a Raspberry Pi board.
Add additional models of components and services or ML models from the Viam Registry, or extend Viam by creating new modular resources.
Integrate a custom base component with the Viam Python SDK.
Integrate an Intermode rover as a modular-resource-based component with CAN bus.
Configure an AMS-AS5048 encoder.
Configure an incremental encoder with a microcontroller.
Configure an incremental encoder.
Configure a single encoder with a microcontroller.
Configure a single encoder.
Configure a wheeled odometry movement sensor.