GithubHelp home page GithubHelp logo

arthur-silveira / index Goto Github PK

View Code? Open in Web Editor NEW

This project forked from opulo-inc/lumenpnp

0.0 0.0 0.0 27.8 MB

The Index is an open source pick and place machine.

License: GNU General Public License v3.0

C++ 49.25% C 47.51% Makefile 0.08% Objective-C 0.79% Python 0.28% Shell 0.21% OpenSCAD 0.02% G-code 0.01% HTML 1.84% CSS 0.01% JavaScript 0.01%

index's Introduction

Index PnP

The Index Pick and Place is an open source pick and place machine to aid in Mid-Scale Manufacturing.

Index

This project is under development. It is not currently in a stable state. Development is active and ongoing, but this is not yet a finished design. If you'd like to build one to help find bugs and design issues, please do!

The Index is designed to be low-cost enough that someone could buy or build one to support making production runs at home or as a small business. It runs using OpenPnP.

The Index will eventually be able to do every component of PCBA manufacturing. It is currently capable of picking parts and placing them, but eventually the Index will support solder paste dispensing, automatic reflow, and even AOI.

Along with the Index machine itself, the project also comes along with feeders designed to work with the Index. Although they were designed with the Index in mind, they can work with any OpenPnP pick and place with a 20mm x 20mm rail for mounting.

A full Bill of Materials for the project can be found here.

The Index's development process is being cataloged in a series of videos. A playlist of these can be found here.

System Overview

The Index is controlled with OpenPnP. OpenPnP generates gcode based on PCB design files and sends it over to a custom motherboard running a modified version of Marlin. This handles controlling the motors, pump, limit switches, feeders, etc.

The motherboard communicates with the feeders over RS-485. After the feeder receieves a command from the motherboard, it sends a confirmation or error message back. This is then sent back to OpenPnP. Situations where the feeder would send an error message back would be a tape runout or jam.

The mechanical design of the system is largely based on the OpenBuilds ACRO 55. It is a V-Slot/roller motion control system with two motors controlling the Y gantry, one controlling the X, and one controlling the Z. All parts are optomized for FDM 3D printing.

Contributing

If you would like to contribute to the project, awesome! Here's some general guidelines for how to participate in development:

  • Pull Requests should only be made for software and electrical changes. The CAD for the Index currently lives in Fusion 360, which does not play nice with git. If you have a change you'd like to make to the CAD, file an issue using the "CAD Update" template. Go to the "Issues" tab, click "New issue," click "Get started" in the CAD Update box, then fill in your issue information. This is currently clunky, but eventually the mechanical CAD for the Index will be switched to FreeCAD and will be tracked in git along with everything else.
  • PRs should be self-contained nuggets of improvement. Each commit to master should stand alone as a viable Index build.
  • Please be as descriptive as possible about your PR and what it is you changed. If your PR represents an actual test you did on a build you're doing yourself, awesome! Please include any information about how the update performed on your build.
  • Ensure that your PR is adhering to the general system architecture outlined in "System Overview" above. For example, don't file a PR that switches all feeder communication to SPI, or removes a huge feature from the machine. Systemic changes are decided in the STR Discord Server. If you'd like to weigh in on those decisions or help make them, feel free to pop in!

Building an Index

This is an unfinished design. Builds at this time should be thought of as helping the R&D process, and not for the end result of having a fully operational pick and place.

Ordering PCBs

Many boards in the design are also used in a mechanical way, meaning some specifics of how the boards are ordered matters more than usual.

Default Configuration

  • Board Thickness: 1.6mm
  • Pad Plating: Any
  • Silk/Mask: Any

Indexing Wheel Configuration

  • Board Thickness: 1mm
  • Pad Plating: ENIG
  • Silk/Mask: White/Matte Black

3D Printing

During development of the Index, all parts were printed in PLA. A few parts in particular require quite a high strength if being printed. Of course, every printer runs a bit different, and these are just guidelines to illustrate the necessary strength difference between different parts.

Default Settings

  • 3 shells
  • 20% infill
  • 5 Top/Bottom layers

Gantry Part Settings

  • 4 shells
  • 30% infill
  • 5 Top/Bottom layers

index's People

Contributors

sphawes avatar nightskysk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.