Giter Site home page Giter Site logo

charmhigh-pnp-tools's Introduction

Tools for the Charmhigh Pick-and-Place Machine

Tools, scripts and instructions for efficient usage of the Charmhigh Pick-and-Place Machine

Quick start guide

  • Load the machine with the required parts. You might want to create a CSV file which lists all the parts in the machine, with up to 5 columns (first two columns are required, others are optional):

    part name | stack number | feed distance | head number | rotation offset
    

    For instance:

    100nF,1,2
    4u7F,18
    TPS65400-Q1,27,8,2,90
    

    Parts will be placed in the order in which they appear in this file.

  • Export the position file from KiCAD by opening Pcbnew, selecting File -> Fabrication Outputs -> Footprint Position (.pos) File, choosing an output directory and then clicking Generate Position File. Make sure that the output format is CSV and that units are in millimeters. Don't forget to place the auxiliary axis origin in one of the corners of the PCB before generating the position file. That corner will later be used as the board origin when placing the parts.

  • Use the python script gen_charmhigh_pnp_file.py to convert the position file to a DPV file used by the machine, for instance by executing:

    gen_charmhigh_pnp_file.py --stackfile stack.csv -o out.dpv pos.csv
    

    where stack.csv is the name of the CSV file created in the first step, pos.csv is the position file exported from KiCAD and out.dpv selects a name for the machine file which shall be created. The option -m can be used to specify the coordinates of fiducials or other marks on the board which are later used to calibrate the position of the PCB in the machine. Copy the generated *.dpv file to a USB stick.

  • Apply solder paste to a PCB and place it in the machine. Be careful to place the corner of the board which was choosen as auxiliary axis origin in KiCAD in the lower left corner of the clamping mounts of the machine.

  • Start the machine by toggling the power switch, then wait a few seconds and start the Charmhigh control program.

  • Connect the USB stick (in order for the USB stick to be recognized it must be connected after starting the Charmhigh control program). In the Charmhigh control program, click on Files, then on Import. Select the desired DPV file and then click on Update to import the file.

  • In the main menu of the control program, click on Run and then select the imported DPV file. Click on Edit and then on PCB calibrate in order to calibrate the position of the PCB based on fiducials or other marks. If the camera image does not show up, close the Charmhigh control program and restart it without turning of the machine.

  • From the main menu click on Run, again select the desired DPV file and then click on Load. The machine is now ready to start placing parts. By repeatedly clicking Step the machine slowly steps through the process. If you are very confident, you can click Run to have the machine quickly place all parts without interruption.

charmhigh-pnp-tools's People

Contributors

christianhirsch avatar michael-platzer avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

nikor bsilver8192

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.