100%
robotic-gripper GripperBoard view
Description

Imported from GitHub: Evroc/Robotic-gripper · commit 73cb36c · license MIT

Description

Cheap, 3d printed gripper for robotic applications with integrated electronics and ROS communication

README

Robotic gripper

Table of contents

  1. Introduction
  2. Features
  3. Printed parts
  4. Other parts
  5. PCB
  6. Software
  7. Simulation
  8. Assembly manual
  9. Additional informations
  10. Other links

Introduction

Cheap, 3d printed gripper for robotic applications with integrated electronics and ROS communication.

Features

  • The gripper is mostly 3D printed, all parts were designed for FDM printers.

  • Cheap - <100$ (excluding 3d printed parts), the most expensive parts are servomechanism and microcontroller.

  • Powerful grip - 2:1 gear ratio.

  • Plug’n play - after assembling the project all you need to do is connect a USB-C cable and power cord to DC socket.

  • Easy communication - you can simply send the servo position using a USB-C cable and provided code example.

  • ROS compatible - use rosserial to communicate with the gripper.

Printed parts

All files can be found there: (LINK)

Other parts

For non printed parts look here:

PCB

I designed dedicated PCB for this project, however feel free to modify it or even use your own designs.

Cheatsheet:

  • STATUS led - pin 0 (pinMode(0, OUTPUT))
  • COMMUNICATION led - pin 1 (pinMode(1, OUTPUT))
  • SERVO - pin 8 (servo.attach(8))
  • Power Status led works independently from the software
  • Jumper allows to power MCU without USB cable

Software

The repository includes two exemplary control methods:

  • using the serial library
  • using the rosserial package and the ROS platform

The included examples are written in Python language.

In order to upload the program to Seeeduino, the appropriate Arduino IDE configuration is necessary (instruction)

For both options it is necessary to install the pyserial library:

$ pip3 install pyserial

To use example with pyserial:

  • upload to Seeeduino program gripper_serial.ino
  • run the script gripper_serial.py with the appropriate port as an argument:
$ python3 gripper_serial.py --usb_port /dev/ttyACM0

To use example with rosserial:

  • upload to Seeeduino program gripper_rosserial.ino
  • install ROS (installation instruction)
  • create a workspace and build rosserial repository:
$ mkdir -p catkin_ws/src
$ cd /catkin_ws/src
$ git clone https://github.com/ros-drivers/rosserial.git
$ cd /catkin_ws
$ catkin_make
$ source devel/setup.bash
  • run roscore in another terminal
  • run serial_node with the appropriate port as an argument:
$ rosrun rosserial_python serial_node.py port:=dev/ttyACM0
  • in another terminal run script gripper_rosserial.py
  • you can also control gripper by publish state on the topic /gripper_state, for example:
$ rostopic pub /gripper_state std_msgs/Int16 "data: 0"

Simulation

Check that: https://github.com/Michal-Bidzinski/UR3_sim

Assembly manual

Online version is here: (Build guide)

PDF is here: Build guide PDF

Additional informations

Keep in mind that the project is still under development and some information is missing here. If you encounter problems - contact me using email: [email protected]

Other links

(Assembly animation)

(How does the mechanism works)

Comments
Sign in to comment

No comments yet. Be the first to ask about this board.