Skip to main content

NURO Arm: Accessible Robotics Educational Platform

Project description

NURO Arm: Accessible Robotics Educational Platform

Documentation | Website


This repository is built to help students learn more about programming and robotics. It aims to provide a high-level interface for performing basic robotic manipulation tasks. The repo is meant to be accessible: the hardware is low cost; a simulator is provided for those who do not purchase the robot; the api is built to work on Windows, MacOS & Linux.

Software Installation

Conda

For Windows, we recommend using a conda environment so that pybullet can be installed beforehand.

conda create -n "myenv" python=3.8
conda activate myenv
conda install -c conda-forge pybullet
pip install nuro-arm

Pip

Using pip will only work for Linux and Mac:

pip install nuro-arm

[Windows Only] Add libraries for handling usb-hid commands:

  1. Download this zip file
  2. In File Explorer, navigate into downloaded folder [your downloads location]\hidapi-win\x64
  3. Copy the three files ("hidapi.dll","hidapi.lib","hidapi.pdb")
  4. Paste them in "C:\Users[username]\Anaconda3\envs[your-env-name]"

[Linux Only] Install libraries for usb-hid:

sudo apt-get install libhidapi-hidraw0 libhidapi-libusb0
sudo service fwupd stop

Robot Kit

Parts List

You can order the parts for the robot kit easily for around $250. In order to use the camera, you will need access to a 3D printer (we are working on finding a prebuilt camera holder). You can use the simulated version of the robot first to see whether you want to purchase the robot. We have no relationship with the manufacturers of the parts.

Description Price
Hiwonder xArm Robotic Arm $200
ELP Megapixel 720p USB Camera 100 deg lens $30
Small (~1") toy cubes or find similar items around the house $19 (or free)
3D Printed parts (stl files) ~$10
computer with 2 USB-A ports or equivalent adapters -

Assembly

The assembly process takes around 3 hours, including calibration. Check the documentation for assembly and calibration instructions.

Features

Robot [or Simulator]

  • Calibration of robot servos
  • Enforcement of joint position and velocity limits
  • Collision detection
  • Forward and Inverse Kinematics
  • Support for complex non-linear movements
  • GUI for simple joint motion
  • GUI for sequencing arm movements

Camera

  • Estimation of intrinsic/extrinsic parameters
  • GUI for visualizing or debugging
  • Taking photos and videos
  • Pose estimation of cubes using Aruco Tags

Projects

Here are some project ideas that are feasible with this platform:

  • Face tracking with hand-held camera
  • Creating stacks of cubes
  • Throwing objects into a bin
  • Playing tic-tac-toe
  • Tactile sensing of objects
  • Typing on a keyboard
  • Investigating positional accuracy of servos
  • Picking up novel objects If you are an educator looking for more information on projects or want to chat about curriculum ideas, please contact me.

Acknowledgements

The xarm controller code is an amalgam of the following repos:

License

This code is released under the MIT License.

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

nuro-arm-0.0.5.tar.gz (5.2 MB view details)

Uploaded Source

Built Distribution

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

nuro_arm-0.0.5-py3-none-any.whl (5.2 MB view details)

Uploaded Python 3

File details

Details for the file nuro-arm-0.0.5.tar.gz.

File metadata

  • Download URL: nuro-arm-0.0.5.tar.gz
  • Upload date:
  • Size: 5.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.12

File hashes

Hashes for nuro-arm-0.0.5.tar.gz
Algorithm Hash digest
SHA256 27a8a04397a7566fa2727b205b829c0c8da1343deb9818ad50d430fae82dda68
MD5 f9aa817df9f405531fbc060a8523df71
BLAKE2b-256 74db75184ecf86f5bb95ed1c3bd29102682e18e28649bd851b09820cd70162b4

See more details on using hashes here.

File details

Details for the file nuro_arm-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: nuro_arm-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.12

File hashes

Hashes for nuro_arm-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3a37f47ddb344e7489c45616de8fccf76f19c251d09643dcf61fa12e30403379
MD5 1de1baa7d2c8475bf77aaf3a77ede2e7
BLAKE2b-256 4ba6f95157ae4567697aafaf1c6631451efc72bd71d87980f07350cf055ba00c

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