Here are some resources for robotics (software and hardware) that I have found useful. It's still incomplete but it's a good start.
The goal here is to focus to get you started in Robotics with not very expensive robots. I know there are many expensive robots in the industry (KUKA, Fanuc, ABB, etc), but that's not the goal of this post.
For robotics software/simulation:
-
ROS. The "Robot Operating System": A bit overloaded name, as it's not really an operating system, but it's (an open source) middle layer to interface wth a lot of robots and sensors with a useful visualization tool (RVIZ).
-
MuJoCo: Multi-Joint dynamics with Contact, is a general purpose physics engine (acquired by Google's DeepMind) that is used for a lot of robot simulations, to generate positions, coordinates, and avoid joint violations.
-
Isaac Sim: Nvidia's PhysX engine. It's also used for robot simulations, multi-sensor RTX rendering (GPU), with support of multiple existing robots.
Recent AI Papers:
Not covering much on classical robotics like SLAM, VSLAM, Path Planning, Kinematics/Dynamics, Jacobian Matrices, CNNs, etc. But very helpful to have an understanding of them.
-
RT-1 (Robotic Transformer): A vision-language AI model for robot control that processes sequences of visual inputs alongside textual instructions through a transformer, generating specific motion commands that can drive robot actuators.
-
SayCan, Grounding Language in Robotic Affordances: a model (based on PaLM) to combine semantic knowledge with pretrained robot behaviors to enable robots to execute complex text instructions in real-world environments.
-
RT-2: a model that combines vision-language AI with robot control by expressing robot actions as text tokens, enabling better generalization and reasoning capabilities that emerge from internet-scale training.
-
Mobile Aloha: a low cost, a teleoperation robot that enables robots (Aloha Kits) to learn complex whole-body mobile manipulation tasks from human demonstrations, successfully performing activities household tasks through co-training with existing datasets.
Robot datasets:
Sadly, there aren't many large datasets for robots out there yet.
-
ARMBench (released by Amazon): contains over 190K objects in industrial product-sorting settings, great for pick and place robots.
-
AGIBot World: 1 million+ trajectories from 100 robots. 100+ 1:1 replicated real-life scenarios across 5 domains, great for single arm and mobile dual arms robots.
-
Open X-Embodiment (Datasets and RT-X Models): probably the largest os dataset to-date: it contains over 1 million real robot trajectories from 22 different robots (xARM, Franka, Sawyer, Kuka, etc), demonstrating 527 skills. RT-X models demonstrate that a single "generalist" policy can effectively transfer learning between different robots and tasks.
Robotics Hardware (that you can buy now):
Robot Arms:
-
xArm from uFactory: I have used these robot arms and they have worked great so far. Used in research and in some light industrial applications. Great cost too and good Python/ROS SDK. Available in 5, 6 and 7 DOF. Company is based in China.
-
Franka Emika: A 7 DOF arm mostly used for research. More expensive than the xARMs for with a few more functionalities. Good Python/ROS SDKs. Company is based in Germany.
-
Universal Robots (UR): Industry standard collaborative robot arms. Mostly used in production and industrial environments. More expensive than xARM and Franka. Available with multiple payloads and DOF. Python SDK. Company is based in Denmark.
-
Aloha Kits: Set of different Aloha arms (Aloha Solo, Aloha Stationary, Mobile Aloha) for teleoperation, data collection and model training. Only used in research.
-
Agile X Robotics: A low cost ($2.5K) robot arm with 1.5Kg payload with 6DOF
Other robots:
-
Unitree Go2: Fantastic robot dog with great kinematics & hardware. Lidar and multiple cameras and sensors available. Starts at $1.6K. Not a big fan of their software Software/SDKs, but it has been improving.
-
Unitree B2: An industrial grade robot dog capable of bigger payloads (~40Kg) than the Go2. Larger batteries and longer range Lidar.
-
Unitree G1: Entry level, short-sized humanoid robot with a 3D lidar, depth camera, 23 DOF, moving speed of 2m/s. Starts at $16K.
-
Unitree H1: Full-sized humanoid robot (180cm). Speed of 3.3m. 3D lidar and depth camera (Intel RealSense D435i). Stronger motors and bigger payload than the G1.
-
LimX Dynamics W1: Wheeled quadruped Robot for all terrains.
-
LimX Dynamics CL-1: (no much data about it)
-
LimX Dynamics TRON1: Biped Robot, Python SDK and MuJuCo, Isaac Sim and Gazebo integration. Add-ons: wheels, radar, robot arm, camera and gimbal.
-
DeepRobotics: A very neat, recently released robot dog with great kinematics and wheels.
Some Robot parts:
Compute:
-
Nvidia Jetson Series: the Nvidia Jetson Orin Nano 4Gb I find it to small for anything serious. Probably best if it's 8Gb+.
-
Intel NUC computers with Linux: they are great for doing general computing for robotics (no GPU). It drains about 3-5 amps of current depending on compute workload.
-
ODROID small computers: much better (small) computers than Raspberry Pis. Probably some of the most powerful computers for their size and power consumption. Always use an external fan for them.
Motor Controllers:
-
VESC Project: The VESC (Vedder Electronic Speed Controller) project is an open-source electronic speed controller for electric motors. It can do precise motor position control without using an encoder with "silent HFI" (High-Frequency Injection), which enables the VESC to determine the motor's position accurately without any external sensors/encoders by analyzing the response of the HFI to deduce the rotor position.
-
VESCular6: a multi-functional motor controller based on the VESC project which provides precise position control algorithms, Degree Per Second (DPS) speed control and Goto control. High-level commands can be issued through VESC-Tool and through ROS.
-
ODrive: high power (3kW Continuous Power, 5kW peak), 14-58V range, with CAN, UART, Step/Direction and GPIO. Works with Python, Arduino, CAN, and ROS2.
-
Obot controller: An open source controller that works via USB with Linux, ideally for Nvidia Jetson Nano, Raspberry Pi, etc. Originally desgined fot the Obot robot.
-
Solo Motor Controller: Supports DC, BLDC, PMSM, and ACIM Motors, Sensored and Sensorless. Torque, Speed Control and Position Control. Library for C++, Python, Arduino and Mathlab.
Lidars:
-
Velodyne: A Californian company and the OG in the space (started as a lidar for the DARPA Grand Challenge) and in 2023 it merged with Ouster. I used the Velodyne VLP16 a lot for robots, but got replaced by the new OS series by Ouster.
-
SICK Lidars: A German manufacturer; very reliable and widely used in industrial applications. The TIM551 (2D) is a common one for indoor robotics.
-
RoboSense Lidars: 3D options: Airy, Helios, Bpearl.
-
Hokuyo Lidars: A Japanese manufacturer of 2D lidars, also popular in indoor robotics.
-
Unitree L2 3D Lidar: A ~$419USD 3D Lidar.
-
DJI Lidar: Normally used for cameras, but could be used for robotics.
Depth Sensors:
-
Intel Realsense: Widely used in robot applications. A few different models are available with good software support.
-
ZED 2: ZED 2 by StereoLabs. A good alternative to Realsense.
-
Orbbec: Many options, from Stereo vision, TOF, and Structured Light Cameras.
-
Microsoft Kinect: Sadly Microsoft killed the Kinect (again), but still a good one.
Actuators:
There are many so many options for motors. Here some popular ones:
-
MyActuator motors: these are cheap, powerful brushless motors with positional encoders, and many communication buses (CAN, RS485, EtherCAT). They have replaced in many cases harmonic drives.
-
Robstride: another cost efficient powerful brushless motors with positional encoders.
-
DeepRobotics J60, J80, J100: These are some of the motors used in the DeepRobotics dogs and humanoids with CAN Bus.
Others:
Controllers (useful for local teleop):
Normally these remote controllers are use for other purposes (Gaming, RC planes, etc) but are very useful for robotics:
Long range:
Short range:
- Any of the XBox/gaming Bluetooth controllers
Electronics and electronic stores:
-
Mouser: A US based Integrated Circuit (IC) supplier. Most ICs are available here. Mouser and Digikey are the leaders in providing from one IC to millions in reels for pick and place machines.
-
DigiKey: A US based Integrated Circuit (IC) supplier. Most ICs are available here. Mouser and Digikey are the leaders in providing from one IC to millions in reels for pick and place machines.
-
Pololu: US based robotics and electronics store with some great custom made boards like DC converters, motor drivers, bus communication boards, etc.
-
SparkFun Electronics: US based electronics store with multiple custom mde boards from GPS, communication boards, Arduino Shields, ESP32 shields, audio boards, etc. Some of their designs are open source.
-
Adafruit: US based DIY electronic store. Many custom made boars for LEDs, communication, Arduino shields, etc. Most of their designs are open source.
-
SeedStudio: Shenzhen-based electronics store. They have different designs than Pololu/Adafruit/Sparkfun, and have some great custom made alternatives.
-
JLCPCB Parts: This is like a Chinese Digikey/Mouser. If you also make the PCBs with them, they will assemble it at a low cost (and fast).